//Api集中管理,使用vuex存储token
//而具体的接口函数则应该封装在 api.js 文件中。
const http = uni.$u.http
import store from '@/store/index.js'
// export const wxLogin = (params)=>http.put('/user/wxlogin', params)







// //登录
 async function wxlogin(params){
	try {
		const res = await http.put('/user/wxlogin', params);
		console.log('request success d: res.data:', res.data);
		return res;
	} catch (error) {
		console.log('request fail d', error);
		throw error; // 抛出错误
	}
}


//用户的 发布的 谜题的获取
async function showUserList(id){
	try{
		const res= await http.get(`/user/puzzle/listall/${id}`,{
			//listall
			header:{
				'wxtoken':store.state.userInfo.wxtoken
			}
		})
		
		//由于request已经返回  res.data.data，所以这里用res接收就可以
		console.log('request success showUserList: res.data:', res);
		return res;
	}catch(error){
		console.log('request fail d', error);
		throw error; // 抛出错误
	}
}





module.exports = {
  wxlogin,
showUserList,
  // 导出的接口函数...
}




//在需要发送请求的地方，引入对应的Api接口，然后调用相应的方法即可：
//import { postMenu, getMenu } from '/config/api.js';
//eg:   { custom: { auth: true }}/判断是否需要携带token等认证信息
// postMenu({ custom: { auth: true }})
//     .then((res) => {
//         // 处理成功返回的数据
//     })
//     .catch((err) => {
//         // 处理请求失败
//     });








// // post请求，获取菜单
// export const postMenu = (params, config = {}) => http.post('/ebapi/public_api/index', params, config)

// // get请求，获取菜单，注意：get请求的配置等，都在第二个参数中，详见前面解释
// export const getMenu = (data) => http.get('/ebapi/public_api/index', data)



// //登录
// export const postLogin = (params,config={})=> http.put('/user/wxlogin',params,config)


// //put
// //谜题单个添加
// export const puzzleAdd = (params,config={})=> http.post('/user/puzzle',params,config)
//   //private String puzzleName;//谜题名称
// 	// private String puzzleAnswer;//谜题答案
// 	//private int star;//谜题难度，1~5星
// 	//  private int puzzleType;//谜题类型，如0填空,1选择
// 	//Integer puzzleKinds;谜题分类
// 	// private List<PuzzleLabelDTO> labelList;标签列表
// 	//private PuzzleContentDTO puzzleContentDTO;谜题内容（图片，文本）



// //谜题更新
// //put
// export const puzzleUpdate = (params,config={})=> http.post('/user/puzzle/update',params,config)
// //


// //批量删除谜题
// //delete
// export const puzzleDeleteSome = (params,config={})=> http.post('/user/puzzle',params,config)
// //List<Long> ids

// //根据玩家id回显玩家所出简略谜题信息
// //put
// export const puzzleUpdateByid = (params,config={})=> http.post('/user/puzzle/update/{id}',params,config)


// //根据谜题id展示详细谜题信息
// //get
// export const puzzleListByid = (params,config={})=> http.post('/user/puzzle/list/{id}',params,config)
// //id






//config/api.js代码的使用方法
// await等待，注意与async结合使用
// await postMenu({ custom: { auth: true }})

// // 假设不需要在响应拦截器中自动弹出的toast，以及不想写catch(如果promise中进行reject，但是却没有catch的话会报错)
// postMenu({ custom: { auth: true, toast: false, catch: false }}).then(() => {

// })

// // get请求
// getMenu({ custom: { auth: true }}).then(() => {

// }).catch(() =>{

// })

// // 也可以直接通过uni.$u.post发出请求，注意此处需要写上接口地址
// uni.$u.http.post('/common/menu', { custom: { auth: true }}).then(() => {

// }).catch(() =>{

// })